package cultmob.cine.entity;

import java.util.List;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

import br.gov.pe.tce.entity.TceEntity;
import br.gov.pe.tce.exception.NegocioException;
import br.gov.pe.tce.exception.PrincipalException;

@Entity
@Table(name="CINE_FILME")
public class FilmeEntity extends TceEntity {
	
	@Id @GeneratedValue(strategy=GenerationType.IDENTITY)
	@Column (name = "Codigo", nullable=false, length=4)
	private Integer id;
	
	@Column (name = "Titulo", nullable=false, length=35)
	private String titulo;
	
	@Column (name = "Sinopse", nullable=false, length=200)
	private String descricao;
	
//	@Column (name = "Cinema", nullable=false, length=200)
//	private Integer cinema;

	@Column (name = "FlagLegendado", nullable=false, length=200)
	private Integer flagLegendado;

	@Column (name = "Flag3D", nullable=false, length=200)
	private Integer flag3D;
	
	@Column (name = "FlagVip", nullable=false, length=200)
	private Integer flagVip;
	
	private List<CinemaEntity> cinemas;

	public FilmeEntity () {
		
	}
	
	public FilmeEntity(Integer id, String titulo, String descricao,
			Integer flagLegendado, Integer flag3d, Integer flagVip,
			List<CinemaEntity> cinemas) {
		super();
		this.id = id;
		this.titulo = titulo;
		this.descricao = descricao;
		this.flagLegendado = flagLegendado;
		flag3D = flag3d;
		this.flagVip = flagVip;
		this.cinemas = cinemas;
	}

	public long getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public String getTitulo() {
		return titulo;
	}

	public void setTitulo(String titulo) {
		this.titulo = titulo;
	}

	public String getDescricao() {
		return descricao;
	}

	public void setDescricao(String descricao) {
		this.descricao = descricao;
	}

	public Integer getFlagLegendado() {
		return flagLegendado;
	}

	public void setFlagLegendado(Integer flagLegendado) {
		this.flagLegendado = flagLegendado;
	}

	public Integer getFlag3D() {
		return flag3D;
	}

	public void setFlag3D(Integer flag3d) {
		flag3D = flag3d;
	}

	public Integer getFlagVip() {
		return flagVip;
	}

	public void setFlagVip(Integer flagVip) {
		this.flagVip = flagVip;
	}

	public List<CinemaEntity> getCinemas() {
		return cinemas;
	}

	public void setCinemas(List<CinemaEntity> cinemas) {
		this.cinemas = cinemas;
	}

	@Override
	public boolean isEdicaoValida() throws NegocioException, PrincipalException {
		// TODO Auto-generated method stub
		return false;
	}

	@Override
	public boolean isInclusaoValida() throws NegocioException,
			PrincipalException {
		// TODO Auto-generated method stub
		return false;
	}
	
	
	
	
	
	
	
	
}
